package com.dkm.ec.sale.domain;

import javax.annotation.Resource;

import org.springframework.context.annotation.Scope;
import org.springframework.stereotype.Service;

import com.dkm.base.core.helper.SpringHelper;
import com.dkm.biz.domain.AbstractDomain;
import com.dkm.biz.gl.persistence.entity.GlDicPo;
import com.dkm.biz.gl.repository.GlDicRepository;
import com.dkm.ec.sale.persistence.dao.SaleSkuTagDao;
import com.dkm.ec.sale.persistence.entity.SaleSkuPo;
import com.dkm.ec.sale.persistence.entity.SaleSkuTagPo;
import com.dkm.ec.sale.repository.SaleSkuRepository;
import com.dkm.ec.sale.service.SaleSkuService;

/**
 * 对象功能:产品SKU标签 领域对象实体
 * 开发公司:SKG.COM
 * 开发人员:XWP
 * 创建时间:2015-04-29 14:18:13
 */
@SuppressWarnings("serial")
@Service
@Scope("prototype")
public class SaleSkuTag extends AbstractDomain<String, SaleSkuTagPo>{
	 
	 private SaleSkuTagDao saleSkuTagDao = null;
	 
	 @Resource 
	 private SaleSkuRepository saleSkuRepository;
	 @Resource
	 private SaleSkuService saleSkuService;
	 @Resource
	 private GlDicRepository glDicRepository;

	protected void init(){
		saleSkuTagDao = SpringHelper.getBean(SaleSkuTagDao.class);
		setDao(saleSkuTagDao);
	}	 
	 
	public void saveData(){
		String skuId = this.getData().getSkuId();
		SaleSku saleSku = saleSkuRepository.load(skuId);
		if(saleSku!=null)
			{
			SaleSkuPo saleSkuPo = saleSku.getData();
			SaleSkuTagPo saleSkuTagPo = this.getData();
			saleSkuTagPo.setSaleId(saleSkuPo.getSaleProdId());
			//if(saleSkuTagPo.getType())
			
			GlDicPo glDicPo = glDicRepository.findByCateKeyAndValue(saleSkuTagPo.getType(), saleSkuTagPo.getValue());
			saleSkuTagPo.setLabel(glDicPo.getLabel());
			this.save();
			//更新solr
			saleSkuService.getSaleSkuForSolr(saleSkuPo);
		//	SkuSolr.update(saleSkuPo);
			}
	}
}
